package com.wave.wavesystem.serve.pojo.entity;

import com.mybatisflex.annotation.Column;
import com.mybatisflex.annotation.Table;
import com.wave.common.model.BaseEntity;

import lombok.Data;
import lombok.EqualsAndHashCode;

import java.math.BigDecimal;

@Data
@Table(value = "wave_user")
@EqualsAndHashCode(callSuper = true)
public class User extends BaseEntity {

    @Column(value = "username", comment = "用户名")
    private String username;

    @Column(value = "account", comment = "用户账户")
    private String account;

    @Column(value = "password", comment = "密码")
    private String password;

    @Column(value = "salt", comment = "盐")
    private String salt;

    @Column(value = "email", comment = "用户邮箱")
    private String email;

    @Column(value = "level", comment = "当前等级")
    private Integer level;

    @Column(value = "levelExp", comment = "当前等级的经验值")
    private BigDecimal levelExp;

    @Column(value = "totalExp", comment = "累计经验")
    private BigDecimal totalExp;

    @Column(value = "role", comment = "用户角色")
    private String role;

    @Column(value = "desc", comment = "个人简介")
    private String desc;

    @Column(ignore = true)
    private Integer rank;

    @Column(value = "phone", comment = "手机号")
    private String phone;

    @Column(value = "avatarUrl", comment = "头像url")
    private String avatarUrl;

    @Column(value = "address", comment = "用户地址")
    private String address;

    @Column(value = "status", comment = "用户状态")
    private Integer status;

}
